<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>找到数组中所有的孤独数字</title>
</head>
<body>
  <script>
    var arr = [1,2,3,4,5,7]
    function fn(nums) {
      let res = []
      let len = nums.length
      // 当只有一个元素，返回这个数组的孤独数字
      if(len === 1){
        return nums
      }
      // abs 返回一个数的绝对值
      // 当只有两个元素，并且第一个元素 - 第二个元素得的绝对值 大于 1，返回这个数组的孤独数字
      if(len === 2 && Math.abs(nums[0] - nums[1]) > 1){
        return nums
      }
      nums.sort((a, b) => a - b)
      // 当第二个元素 - 第一个元素得的值 大于 1，第一个元素添加到 res 中
      if(nums[1] - nums[0] > 1){
        res.push(nums[0])
      }
      // 当最后一个元素 - 倒数第二个元素得的值 大于 1，最后一个元素添加到 res 中
      if(nums[len - 1] - nums[len - 2] > 1){
        res.push(nums[len - 1])
      }
      for(let i = 0; i < len; i++){
        if((nums[i] - nums[i - 1]) > 1 && (nums[i + 1] - nums[i] > 1)){
          res.push(nums[i])
        }
      }
      return res
    }
    console.log(fn(arr))
  </script>
</body>
</html>